package com.yst.gateway.monitor.models;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.validation.constraints.Max;

import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

import com.yst.gateway.monitor.common.validator.groups.Groups;

public class SysMenus {
	@NotBlank(message="{sysMenu.id.NotBlank}",groups={Groups.Modify.class})
    private String sysMenuId;

	@NotBlank(message="{sysMenu.name.NotBlank}")
	@Length(max=45,min=2)
    private String sysMenuName;

	@Length(max=128,min=0)
    private String sysMenuUrl;

    private Integer sysMenuLevel;

    @Max(value=99,message="{model.filed.max.length}")
    private Integer sysMenuSort;
    
    @Length(max=45)
    private String sysMenuPid;

	private Integer sysMenuStatus;

    private Integer sysMenuDel;

    private Date sysMenuCtime;

    private String sysMenuCreator;

    private Date sysMenuUtime;

	private String sysMenuModifier;
    
    private String sysMenuPname;

	@Length(max=45,min=0)
    private String sysMenuIcon;
    
    private List<SysMenus> childList;
    
    public String getSysMenuIcon() {
		return sysMenuIcon;
	}

	public void setSysMenuIcon(String sysMenuIcon) {
		this.sysMenuIcon = sysMenuIcon;
	}
	
    public String getSysMenuPname() {
		return sysMenuPname;
	}

	public void setSysMenuPname(String sysMenuPname) {
		this.sysMenuPname = sysMenuPname;
	}

	public String getSysMenuId() {
        return sysMenuId;
    }

    public void setSysMenuId(String sysMenuId) {
        this.sysMenuId = sysMenuId;
    }

    public String getSysMenuName() {
        return sysMenuName;
    }

    public void setSysMenuName(String sysMenuName) {
        this.sysMenuName = sysMenuName;
    }

    public String getSysMenuUrl() {
        return sysMenuUrl;
    }

    public void setSysMenuUrl(String sysMenuUrl) {
        this.sysMenuUrl = sysMenuUrl;
    }

    public Integer getSysMenuLevel() {
        return sysMenuLevel;
    }

    public void setSysMenuLevel(Integer sysMenuLevel) {
        this.sysMenuLevel = sysMenuLevel;
    }

    public Integer getSysMenuSort() {
        return sysMenuSort;
    }

    public void setSysMenuSort(Integer sysMenuSort) {
        this.sysMenuSort = sysMenuSort;
    }

    public String getSysMenuPid() {
		return sysMenuPid;
	}

	public void setSysMenuPid(String sysMenuPid) {
		this.sysMenuPid = sysMenuPid;
	}
	
    public Integer getSysMenuStatus() {
        return sysMenuStatus;
    }

    public void setSysMenuStatus(Integer sysMenuStatus) {
        this.sysMenuStatus = sysMenuStatus;
    }

    public Integer getSysMenuDel() {
        return sysMenuDel;
    }

    public void setSysMenuDel(Integer sysMenuDel) {
        this.sysMenuDel = sysMenuDel;
    }

    public Date getSysMenuCtime() {
        return sysMenuCtime;
    }

    public void setSysMenuCtime(Date sysMenuCtime) {
        this.sysMenuCtime = sysMenuCtime;
    }

    public String getSysMenuCreator() {
        return sysMenuCreator;
    }

    public void setSysMenuCreator(String sysMenuCreator) {
        this.sysMenuCreator = sysMenuCreator;
    }

    public Date getSysMenuUtime() {
        return sysMenuUtime;
    }

    public void setSysMenuUtime(Date sysMenuUtime) {
        this.sysMenuUtime = sysMenuUtime;
    }

    public String getSysMenuModifier() {
        return sysMenuModifier;
    }

    public void setSysMenuModifier(String sysMenuModifier) {
        this.sysMenuModifier = sysMenuModifier;
    }
    
    public List<SysMenus> getChildList() {
    	if(childList==null){
    		childList=new ArrayList<SysMenus>();
    	}
		return childList;
	}

	public void setChildList(List<SysMenus> childList) {
		this.childList = childList;
	}
}